图表功能 > 数据点转换器 |
在XAML中创建复杂点标签的模版时,DataPointConverter类将非常有用。
DataPointConverter 使用 converter参数基于当前数据点属性生成字符串。转换器参数字符串可以包含以下关键字,每一个关键字可以被每一个数据点的属性的真实值替换:
关键词从#开始,并且应当包括在一对花括号中。可选的格式字符串可以添加到括号内部,如以下字符串格式:{#Values:0.0}
下面的XAML标记显示如何使用DataPointConverter 类:
XAML |
拷贝代码
|
---|---|
<c1chart:C1Chart Name="chart" ChartType="LineSymbols" Margin="20" > <c1chart:C1Chart.Resources> <c1chart:DataPointConverter x:Key="cnv"/> </c1chart:C1Chart.Resources> <c1chart:C1Chart.Data> <c1chart:ChartData> <c1chart:XYDataSeries Label="S1" XValues="1,2,3,4,5,6,7" Values="1,2,3,4,3,4,2" > <c1chart:XYDataSeries.PointLabelTemplate> <DataTemplate> <Border BorderBrush="Black" BorderThickness="0.5" Background="#70FFFFFF" c1chart:PlotElement.LabelAlignment="MiddleCenter"> <TextBlock> <TextBlock.Text> <Binding Converter="{StaticResource cnv}"> <Binding.ConverterParameter> {#SeriesLabel}{#NewLine} X={#XValues:0.0},Y={#Values:0.0}{#NewLine} SI={#SeriesIndex},PI={#PointIndex} </Binding.ConverterParameter> </Binding> </TextBlock.Text> </TextBlock> </Border> </DataTemplate> </c1chart:XYDataSeries.PointLabelTemplate> </c1chart:XYDataSeries> </c1chart:ChartData> </c1chart:C1Chart.Data> </c1chart:C1Chart> |